package com.request; /**
 * @author wzm
 * @create 2023-03-06 10:49
 */

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/rs06")
public class RequestServlet06 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       //不用重写写代码 调用即可
        doPost(request,response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //获取携带的单据
        Object msg = request.getAttribute("msg");
        System.out.println("携带的数据msg = " + msg);

        System.out.println("我是窗口B,我做了一些事情，你的业务办理完毕");

        //清除request中存储的数据
        request.removeAttribute("msg");

        //这里还可以请求重定向到另外的资源
//        request.getRequestDispatcher("http://www.baidu.com").forward(request,response);
        //request.getRequestDispatcher("/Request.html").forward(request,response);
       //斜杆 / 表示的是 http://localhost:8080/项目名/
        request.getRequestDispatcher("/WEB-INF/a.html").forward(request,response);
    }
}

/*
* 小结：
* 请求转发的特点：
* 1.浏览器的地址没有变化
* 2.请求转发表示的是一次请求
* 3.他们共享Request中的数据（域对象  Reqest=Request域）
* 4.请求转发是服务器内部的资源跳转 不可以访问工程以外的资源
* 5.请求转发可以转发到受保护的目录WEB-INF下
* */
